╫HEN TEXT IS PRINTED ON THE SCREEN OR WHEN A CHILD DESIGNS A BEAUTIFUL GRAPHIC DISPLAY IT PAYS TO FRAME IT. ╘HE TWO PROGRAMS IN THIS SECTION DO JUST THAT. ╧NE USES STANDARD PRINTING, ONE POKES THE SCREEN MEMORY.
// PRG: FRAME MAKER //
*** ╓┴╥╔┴┬╠┼╙ ***
╘┬$ THE TOP AND BOTTOM LETTERS
╙╙$ STRING FOR THE SIDES
╞$ CONTAINS CURSOR LEFT PLUS THE INSERT
CHARACTER
*** ╔╬╙╘╥╒├╘╔╧╬╙ ***
╔N LINE 30 YOU CAN TYPE THE NUMBERS AS YOU NOW SEE THEM, BUT THE NUMBERS ARE THERE ONLY TO HELP YOU COUNT. ┴ ROW OF STARS OR ANY OTHER CHARACTER SHOULD GO THERE INSTEAD. ╔N LINE 40 THERE ARE STARS AT POSITION 0 AND 38. ╘HE CENTER OF THE STRING IS MADE UP OF SPACES TO FOLLOW THE IDEA OF A FRAME.
╘HE GRAPHIC CHARACTERS YOU SEE IN THE LISTING ARE ╚╧═┼ IN LINE 70 AND ╚╧═┼, ┘┼╠╠╧╫, 11 CURSOR-DOWN AND 16 CURSOR-RIGHT CHARACTERS IN LINE 90. ╥╒╬ THE PROGRAM TO DRAW THE FRAME. ╔T STOPS WHEN IT IS DONE.
*** ─┼╘┴╔╠╙ ***
╘HAT'S THE FRAME MAKING ROUTINE. ╔T USES ONLY ╨╥╔╬╘ STATEMENTS. ╘HE TRICK IS NOT TO PRINT OVER 39 CHARACTERS PER LINE AND NOT TO ALLOW THE PRINTING CURSOR TO WRAP AROUND TO THE NEXT LINE. ╘HIS IS DONE IN LINE 30. ╔T IS THE SAME AS IF, IN DIRECT MODE, YOU TYPED A ROW OF STARS OR LETTERS, 38 CHARACTERS LONG. ╘HEN YOU BACK UP THE CURSOR ONE POSITION, ╔╬╙╘ ONE CHARACTER AND FILL IN THE GAP.
╧NCE THE FRAME IS DRAWN YOU CAN PRINT ANYTHING YOU WISH, SO LONG AS THE TEXT DOES NOT EXCEED 37 CHARACTERS PER LINE.
*** ╨╥╧╩┼├╘ ***
├HANGE THE CHARACTER FROM A STAR TO SOMETHING ELSE. ├LEAR THE SCREEN BEFORE PRINTING ANY PICTURE, THEN FRAME IT. ┴╠TERNATELY YOU CAN DO THE FRAME FIRST, THEN FILL IT WITH WHATEVER PICTURE YOU HAVE IN MIND.
├OMBINED WITH THE WINDOWS, DESCRIBED BEFORE, A FRAMING ROUTINE COULD HELP YOU DESIGN VERY INTERESTING SCREEN DISPLAYS. ╒SE YOUR IMAGINATION, USE COLORS EFFECTIVELY, USE MOVING DISPLAYS, IF NEEDED ... ENJOY WHAT THIS COMPUTER CAN DO.
Ç*CN1;--- ╨╧╦┼─ ╞╥┴═┼ ---Ç*CN0
╩UST A DIFFERENT WAY TO PLUCK A CHICKEN. ╔NSTEAD OF PRINTING, WE PUT THE ASTERISK FRAME ALL AROUND BY A PROCESS CALLED ╨╧╦┼ - STUFFING THE MEMORY DIRECTLY. ╫E HAVE TO TAKE CARE OF THE COLORS AS WE CAN'T COUNT ON ╨╧╦┼ TO DO IT RIGHT. ╨╧╦┼ IS SLOWER. ╔T IS MORE DIFFICULT TO CODE, SO YOU SHOULDN'T USE IT UNLESS YOU MUST.
// PRG: POKED WINDOW //
*** ╓┴╥╔┴┬╠┼╙ ***
╙═ COMPUTER'S SCREEN MEMORY
├═ COLOR MEMORY
╙ ╙├╥┼┼╬ CODE FOR AN ASTERISK
├ CHARACTER COLOR CODE
╩ LOOP INDEXES FOR THE BORDER
MEMORY LOCATIONS.
*** ╔╬╙╘╥╒├╘╔╧╬╙ ***
╘HE GRAPHICS TO TYPE ARE AS FOLLOWS: IN LINE 120 - ├╠┼┴╥-THE-SCREEN, TWICE ╚╧═┼, CURSOR DOWN, CURSOR RIGHT. ╔N LINE 180: 22 CURSOR DOWN AND 37 CURSOR RIGHT. ╥╒╬ THE PROGRAM. ╔T ENDS BY ITSELF AND LEAVES YOU WITH A WINDOW INSIDE THE FRAME.
*** ─┼╘┴╔╠╙ ***
╘HE COLOR OF THE STAR IS CYAN. ├ IS THE COLOR. ╫HY IS IT 3 INSTEAD OF 4? ╩UST CONFUSION WITH A BIT OF HISTORICAL AND COMPUTERESE BACKROUND. ╘O ╨╧╦┼, USE A NUMBER ONE LESS THAN THE COLOR NUMBER YOU SEE ON THE KEYTOPS. ╙O, IT'S ├╧╠╧╥1,4. BUT IT'S ╨╧╦┼ COLOR MAP,3.
╠INES 130-140 POKE THE TOP AND BOTTOM HORIZONTAL LINES. ╘HEIR ADDRESSES ARE SEPARATED BY 960 CHARACTERS (THE SCREEN IS 1000 CHARACTERS LONG, SUBTRACT 40 TO GET THE START OF THE BOTTOM LINE).
╠INES 150-170 POKE THE TWO SIDES. ╚ERE, WE PICK EVERY FORTIETH POSITION. ╫E POKE THAT, AND ONE POSITION LEFT, WHICH FALLS ON THE RIGHT EDGE OF THE SCREEN.
*** ╫╔╬─╧╫╙ ***
╫HEN THE PROGRAM IS DONE, IT "SETS A WINDOW". ╘HIS IS ANOTHER OF THE GREAT FEATURES OF THIS COMPUTER. ┘OU CAN LIMIT ALL PRINTING TO ONE AREA ON THE SCREEN. ╫HEN "╥┼┴─┘." APPEARS, LIST THE PROGRAM AND NOTE THAT THE STARS STAY PUT, WHILE THE PROGRAM SCROLLS OFF THE SCREEN. ┘OU CAN SET A WINDOW IN A SIMILAR FASHION AT THE END OF THE FIRST PROGRAM.
╘HE WINDOW'S TOP IS SET IN LINE 120. ╔T'S ONE POSITION DOWN AND ONE POSITION RIGHT FROM THE HOME POSITION. ╘HE BOTTOM OF THE WINDOW IS SET BY TAKING THE CURSOR 22 POSITIONS DOWN AND 37 RIGHT. ┘OU CAN CHANGE THESE VALUES OF COURSE.
╫INDOWS CAN BE SET IN DIRECT MODE, BY FOLLOWING THE ┼╙├ KEY WITH ╘-KEY FOR THE TOP LEFT CORNER AND ┬-KEY FOR THE BOTTOM RIGHT CORNER OF THE WINDOW.
*** ╨╥╧╩┼├╘╙ ***
╚OW ABOUT MAKING THE DISPLAY AREA 1 CHARACTER WIDE? ╚OW DO YOU THINK THE WORD "╥┼┴─┘." OR YOUR PROGRAM LISTING WILL APPEAR?
╨ROJECT FOR A LATER TIME, WHEN YOU REREAD THIS BOOK: CHANGE THE SIZE OF THE FRAME TO A MUCH SMALLER AREA IN THE SECOND PROGRAM. ┘OU WILL NEED TO ADJUST THE ╨╧╦┼ ADDRESSES.
─ESIGN A HORIZONTAL WINDOW, ONE LINE WIDE. ┬EFORE YOU USE IT, THINK WHAT WILL HAPPEN TO LISTING, MESSAGES, COMPUTER RESPONSES?
╫INDOWS ARE INDEPENDENT LITTLE CREATURES. ┘OU CAN WORK WITH THEM JUST ABOUT IN THE SAME WAY AS WITH FULL SCREEN: THEY CAN BE CLEARED INDEPENDENTLY OF THE SCREEN, THEY SCROLL ON THEIR OWN, THEY CAN BE USED FOR ╔╬╨╒╘ WITHOUT PICKING UP ANY EXTRANEOUS INFORMATION AND SO ON. ╘HEY CANNOT HAVE A DIFFERENT COLOUR UNLESS YOU PRINT IN DIFFERENT COLOR. ╘HERE ARE MANY FEATURES WORTH EXPLORING, DO IT BY EXPERIMENTING.